package com.tianji.learning.service;

import com.tianji.common.domain.dto.PageDTO;
import com.tianji.learning.domian.DTO.QuestionFormDTO;
import com.tianji.learning.domian.query.QuestionAdminPageQuery;
import com.tianji.learning.domian.query.QuestionPageQuery;
import com.tianji.learning.domian.vo.QuestionAdminVO;
import com.tianji.learning.domian.vo.QuestionVO;
import com.tianji.learning.entity.InteractionQuestion;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 互动提问的问题表 服务类
 * </p>
 *
 * @author author
 * @since 2024-03-21
 */
public interface IInteractionQuestionService extends IService<InteractionQuestion> {

    void createQuestion(QuestionFormDTO questionFormDTO);

    PageDTO<QuestionVO> queryQuestionPage(QuestionPageQuery pageQuery);

    QuestionVO queryQuestionById(Long id);

    PageDTO<QuestionAdminVO> queryQuestionPageAdmin(QuestionAdminPageQuery pageQuery);

    QuestionAdminVO queryQuestionByIdAdmin(Long id);

    void deleteById(Long id);

    void updateQuestion(Long id, QuestionFormDTO questionDTO);

    void hiddenQuestion(Long id, Boolean hidden);
}
